package org.eco.system.service;

import org.eco.common.core.core.domain.model.LoginUser;
import org.eco.common.core.core.page.PageResult;
import org.eco.common.excel.entity.ExcelResultRes;
import org.eco.common.orm.core.service.IBaseService;
import org.eco.system.domain.ImportExport;
import org.eco.system.domain.bo.ImportExportBo;
import org.eco.system.domain.vo.ImportExportVo;

import java.util.List;

/**
 * 导入导出日志Service接口
 *
 * @author wgk
 * @date 2024-06-24
 */
public interface IImportExportService extends IBaseService<ImportExport> {
    /**
     * 查询导入导出日志
     *
     * @param id 导入导出日志主键
     * @return 导入导出日志
     */
    ImportExportVo selectById(Long id);

    /**
     * 查询导入导出日志列表
     *
     * @param importExportBo 导入导出日志Bo
     * @return 导入导出日志集合
     */
    List<ImportExportVo> selectList(ImportExportBo importExportBo);

    /**
     * 分页查询导入导出日志列表
     *
     * @param importExportBo 导入导出日志Bo
     * @return 分页导入导出日志集合
     */
    PageResult<ImportExportVo> selectPage(ImportExportBo importExportBo);

    /**
     * 新增导入导出日志
     *
     * @param importExportBo 导入导出日志Bo
     * @return 结果:true 操作成功，false 操作失败
     */
    boolean insert(ImportExportBo importExportBo);

    /**
     * 新增导入导出日志
     *
     * @param result 导入导出日志
     * @param type      导入导出类型
     * @return 结果:true 操作成功，false 操作失败
     */
    boolean saveInfo(ExcelResultRes result, LoginUser loginUser, String type);

}
